package com.linkgie.galaxyframework.metadata;

/**
 * 标准类型；
 * <p>
 * 
 * 一种可跨越多端多语言对数据的类型进行表达、转换的标准化数据类型系统；
 * 
 * @author huanghaiquan
 *
 */
public enum StandardType {

	/**
	 * 布尔；
	 * <p>
	 * 属于标准类型中的基本类型；
	 */
	@EnumItem("布尔")
	BOOL,

	/**
	 * 整数；
	 * <p>
	 * 属于标准类型中的基本类型；
	 */
	@EnumItem("整数")
	INT,

	/**
	 * 小数；
	 * <p>
	 * 属于标准类型中的基本类型；
	 */
	@EnumItem("小数")
	DECIMAL,

	/**
	 * 文本；
	 * <p>
	 * 属于标准类型中的基本类型；
	 */
	@EnumItem("文本")
	TEXT,

	/**
	 * 字节数据；
	 * <p>
	 * 属于标准类型中的基本类型；
	 */
	@EnumItem("字节")
	BYTES,

	/**
	 * 时间刻度；
	 * <p>
	 * 属于标准类型中的基本类型；
	 */
	@EnumItem("时间")
	TIMESTAMP,
	
	/**
	 * 对象；
	 * <p>
	 * 属于标准类型中的复合类型；
	 * <p>
	 * 对象类型的本质是由一组或者多组基本类型组成的“分组结构的树”；
	 * <p>
	 * 一个“对象”类型的“值”是包含了一个对象的所有值的数据形式；
	 */
	@EnumItem("对象")
	OBJECT,
	
	/**
	 * 空类型；
	 * 
	 * 这不是一个有实际含义的类型，仅用在那些无需标示类型的情形；
	 */
	@EnumItem("空")
	NULL,
}
